在讲Map,Set,List三大接口之前,我们先来了解下Set和List的父类接口Collection接口
一:Collection接口:是java.util包下的一个接口:
其中有一些主要的方法:
size();
isEmpty();
clear();
contains( );
add();
remove();
这几个方法都比较常见,在这就不详细介绍啦!!
还有一个特殊的方法,因为Collection接口扩展了Iteratable接口,所有实现Itreable接口的集合必须提供一个称为iterator()的方法,所以Collection还有iterator()方法,用法如下
Iterator it=set/list.iterator();
while(it.hasNext( )){
AnyType item=it.next( );
System.out.println(item);
}
这里的set\list是List或者Set接口的实例,有上可见,此方法主要是用于遍历的。
附:Collections是java.util包下的类,包含各种有关集合操作的静态方法,可以理解成对继承Collection的接口都有效。
Collections类中的常用方法:
(1)Collections.sort(list):给队列list中的对象排序
(2)Collection.max(list):取队列中最大的对象;Collection.min(list):取队列中最小的对象
(3)Collection.copy(list1,list2):如果list1.length>list2.length,那么list1的前list2.length部分会被覆盖;否则IndexOutOfBoundsExceptio
List2是list1的子列表:
(4)Collections.indexOfSubList(list, list2)第一次出现的位置
(5)Collections.lastIndexOfSubList(list, list2);最后一次出现的位置
二:
继承Collection接口的有List和Set接口:
List:ArrayList和LinkedList
Set:TreeSet和HashSet
- <</span>span
style="font-family:Microsoft YaHei;font-size:12px;" >世间上本来没有集合,(只有数组参考C语言)但有人想要,所以有了集合 - 有人想有可以自动扩展的数组,所以有了List
- 有的人想有没有重复的数组,所以有了set